ランチャーツールRaycastの使い方と設定

ランチャーツールRaycastの使い方と設定

MacのランチャーツールRaycastを使ってみました。自分の分報をすぐ開けるようにしました。
Clock Icon2022.05.27

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

どうも。 えーたん(@eetann092)です。

MacのランチャーツールRaycastを使ってみました。

本記事では、Raycastで行った設定を紹介します。

Raycastとは?

RaycastはMacで使えるランチャーツールです。 アプリケーションの起動やファイル検索、GoogleやTwitterなどの検索、電卓などが使えます。 また、bashやPythonなどのスクリプトを書くことで、いつものタスクをRaycastから呼び出すことができます。

クリップボード履歴にホットキーを設定

Raycastでクリップボード履歴を表示・検索・管理できます。 リンクであれば、command + oを入力するとブラウザで開けます。

以下のように、画像でも表示されます。

クリップボードにあるテキストがカラーコードなら、その色も表示してくれます。 さらに、command + kでメニューを開き、他の形式に変換もできます。

筆者はホットキーにoption + vを設定してクリップボード履歴をすぐに呼び出せるようにしています。

エイリアスを設定

アプリケーション名やコマンド名にエイリアスをつけることができます。

名前が他のアプリケーションやコマンドと似ていたり覚えづらい場合、 エイリアスをつけると検索しやすくて便利です。

筆者のエイリアス設定を一部紹介します。

Name Alias
1Password 1p パスワード管理
Digital Color Meter color picker Mac標準搭載のカラーピッカー
Finder fi Mac標準搭載のファイルマネージャー
GIPHY Capture gif GIF撮影ツール
Slack sl チャット
TweetDeck tw Chromeの「ショートカットを作成」から作れます
システム環境設定 system Macのシステム環境設定
File Search f Raycastのファイル検索

ちなみにエイリアスの文字数の上限は16文字です。

ウィンドウの配置にもエイリアスをつける

RaycastのWindow Managementを使って、ウィンドウを配置できます。 Window Managementには、2分割・3分割・4分割・6分割・最大化などのコマンドがあります。

たとえばBottom Left Quarterコマンドは、 「4分割した画面の左下」に現在アクティブなウィンドウをリサイズして配置できます。

筆者は「3分割」なら1/3、左側ならl、中央ならc、右側ならrのような法則でエイリアスをつけています。

Name Alias
First Third 1/3 l
Center Third 1/3 c
Last Third 1/3 r
Bottom Center Sixth 1/6 bc
Bottom Half 1/2 b
... ...

エイリアスをつければ、ショートカットキーを覚える必要はありません。

たとえば4分割をする場合、 Raycastで1/4と入力し、検索結果のアイコンを見て「左下」「右下」……を判断して配置します。

Quicklinksにリンクを設定すると、わざわざブラウザで検索画面を開かなくてもすぐに検索できます。

検索のクエリは、{Query}のように{}で指定します。 たとえば、DevelopersIOの記事だけをGoogle検索したい場合は以下のように指定します。

https://www.google.com/search?q=site%3Adev.classmethod.jp%20{Query}

localhostを開く

ポート番号を指定してlocalhostを開けるように以下のリンクもQuicklinksに登録しました。

http://localhost:{port}

Slackの特定のチャンネルを開く

Slackの特定のチャンネルをすぐに開けるリンクも登録しました。

slack://channel?team=XXXXXXXXXX&id=YYYYYYYYYYYYY

XXXXXXXXXXはチームIDを指定します。 ブラウザでワークスペースを開いたときのhttps://app.slack.com/client/XXXXXXXXXX/threadsで分かります。
YYYYYYYYYYYYYはチャンネルIDを指定します。 チャンネル名の右クリックメニューから取得できるチャンネルのリンクhttps://hoge.slack.com/archives/YYYYYYYYYYYYYで分かります。

RaycastのExtensionを入れる

Raycastは、Storeで公開されているExtensionを入れることで機能を拡張できます。

おすすめはEmoji Searchです。

ReactでExtensionを書けるようなのでネタを思いついたらまたブログ書きます。

Script Commandsを追加する

RaycastのScript Commandsでは、 bash、AppleScript、Swift、Python、Ruby、Node.jsを使ってまとまった処理を実行できます。

設定画面のCreate Script Commandからテンプレを使ってスクリプトを生成できます。

現在のタブのURLをSlackの分報へ入力

SlackのAPIを使わずにAppleScriptのみで「現在開いているブラウザのタブのURLを、Slackの自分の分報チャンネルに入力」を実現します。
実行の流れは以下です。

  1. ブラウザで今開いているタブのURLを取得
  2. Slackの分報チャンネルを開く
  3. 取得したURLを入力する
  4. カーソルを先頭へ移動する

URL共有時にはコメントを添えることが多いため、送信までは行いません。

コードは以下です。

Slackの特定のチャンネルを開く処理はQuicklinksと同じ方法です。

open locationでSlackのチャンネルが実際に開くまでの時間を考慮して、遅延を入れています。 カーソルを先頭へ移動する処理はcontrol + aのキー入力で実現しています。

分報チャンネル以外でも、特定の話題を扱うチャンネルで使えそうです。

Slackの〇〇一覧を開く

Slackの「ブックマーク」「メンション&リアクション」「スレッド」をSlack以外のアプリケーションで作業していてもすぐ飛べるようにします。

以下は、Slackのブックマークを開く例です。

#!/usr/bin/osascript

# Required parameters:
# @raycast.schemaVersion 1
# @raycast.title Jump to Slack Bookmarks
# @raycast.mode silent

# Optional parameters:
# @raycast.icon ?
# @raycast.packageName eetann

# Documentation:
# @raycast.author eetann
# @raycast.authorURL https://github.com/eetann/

tell application "Slack"
	activate
	delay 0.5
	tell application "System Events"
		key code 1 using {command down, shift down}
	end tell
end tell

Slackのショートカットキー入力をAppleScriptで代行して実現します。 key code 1の部分を変えれば別のページに飛べます。
key code 46なら「メンション&リアクション」、
key code 17なら「スレッド」です。

key codeについてはComplete list of AppleScript key codesを参考に指定しました。

他の人が書いたScript Commandsを使う

raycast/script-commandsにたくさんのScript Commandsの例があります。

おすすめはクリップボードの画像を特定のディレクトリに保存するsave-image-from-clipboard.pyです。ただし、Pollowのインストールが必要です。

pip3 install --user Pillow

今回は扱いませんでしたが、出力形式についてはscript-commands/OUTPUTMODES.mdに書かれています。

AppleScriptをスクリプトエディタで編集して保存するとUTF-16LEになります。 気になる方はいつも使うテキストエディタだけで編集しましょう。

紙吹雪とライトセーバー

Confettiコマンドで紙吹雪が出ます。画面共有時に良いかもしれません。

Toggle Lightsaberコマンドではマウスカーソルがライトセーバーになります。

リンク集


参考

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.